home *** CD-ROM | disk | FTP | other *** search
Text File | 1997-06-28 | 594 b | 35 lines | [TEXT/CWIE] |
- // EarBase.h
-
- #ifndef EarBase_h
- #define EarBase_h
-
- #ifndef Announcer_h
- #include "Announcer.h"
- #endif
- #ifndef ListLink_h
- #include "ListLink.h"
- #endif
-
- class EarBase
- {
- private:
- ListLink<EarBase> link;
-
- public:
- EarBase();
- EarBase( const Announcer& );
- ~EarBase();
-
- bool Listening() const { return link.Owned(); }
- void ListenToNothing() { link.Owner().Remove( link ); }
- void ListenTo( const Announcer& a )
- {
- const_cast<Announcer&>(a).ears.Add( link, afterEnd );
- }
-
- virtual void HearAnnouncement() = 0;
- virtual void HearDestruction() = 0;
- };
-
- #endif
-